package com.axzhengxin.platform.homePage.mapper;

import com.axzhengxin.platform.homePage.domain.MonthResult;
import com.axzhengxin.platform.homePage.domain.SearchParams;
import com.axzhengxin.platform.homePage.domain.StatisticData;
import org.apache.ibatis.annotations.Param;

/**
 * @Author AHZJ0005
 * @Date 2021/3/2-21:43
 **/
public interface HomePageMapper {

    /**
     * 获取当月新增
     * @return
     */
    MonthResult getNewApproveCountByMonth(MonthResult result);

    /**
     * 获取上月新增
     * @return
     */
    MonthResult getNewApproveCountByLastMonth(MonthResult result);

    /**
     * 获取当日新增
     * @return
     */
    MonthResult getNewApproveCountByNowDay(MonthResult result);

    /**
     * 获取昨日新增
     * @return
     */
    MonthResult getNewApproveCountByYesterday(MonthResult result);

    /**
     * 根据日期查询当日的审核个数 总金额
     * @param searchParams 天数
     * @return 结果
     */
    StatisticData selectAuditingCountByDate(SearchParams searchParams);

    /**
     * 根据日期查询当日的授信个数 总金额
     * @param searchParams 天数
     * @return 结果
     */
    StatisticData selectApproveCountByDate(SearchParams searchParams);

    /**
     * 本月发生审核数
     * @param result
     * @return
     */
    MonthResult getNewAuditingCountByMonth(MonthResult result);

    /**
     * 上月发生审核数
     * @param result
     * @return
     */
    MonthResult getNewAuditingCountByLastMonth(MonthResult result);

    /**
     *
     * @return
     */
    MonthResult getNewAuditingCountByNowDay(MonthResult result);

    /**
     *
     * @return
     */
    MonthResult getNewAuditingCountByYesterday(MonthResult result);

    /**
     * 获取预警信号条数
     * @param searchParams
     * @return
     */
    int getWarnCount(SearchParams searchParams);

    /**
     * admin查询申请统计
     * @param searchParams
     * @return
     */
    StatisticData selectAuditingCountByDateAdmin(SearchParams searchParams);
}
